Adaptive search refinement

ABSTRACT

A computer-implemented method for adaptive search refinement is provided. The method may include obtaining an indication of user engagement with an online marketplace and in response to obtaining the indication, providing visually guided search refinement to construct a search query for searching the online marketplace. Providing the visually guided search refinement may include providing search refinement options, obtaining an indication of the approval or disapproval of one or more of the search refinement options, and repeating providing the search refinement options and receiving the indication. For each iteration of providing the plurality of search refinement options, at least some of the search refinement options may be different and determined based on previously received indications of both approval and disapproval. The method for adaptive search refinement may further include providing search results based on the search query.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.17/063,454 by Gabbai et al., entitled “Adaptive Search Refinement,” andfiled on Oct. 5, 2020; which is a continuation of U.S. patentapplication Ser. No. 15/974,040 by Gabbai et al., entitled “AdaptiveSearch Refinement,” and filed on May 8, 2018, now U.S. Pat. No.10,803,406 issued on Oct. 13, 2020; which is a continuation of U.S.patent application Ser. No. 14/793,342 by Gabbai et al., entitled“Adaptive Search Refinement,” filed on Jul. 7, 2015, now U.S. Pat. No.9,990,589 issued on Jun. 5, 2018; each of which is hereby incorporatedby reference in its entirety.

FIELD

The embodiments discussed herein are related to adaptive searchrefinement.

BACKGROUND

As an ever-increasing amount of information is being made availableelectronically, typically over networks such as the Internet, it isincreasingly difficult to locate information or other content that maybe of interest to a user. Many systems may utilize search engines thataccept keywords or other types of queries from a user, and returnresults related to the query. Oftentimes users do not enter precisequeries, which may result in the set of results being over-inclusive,forcing the user to navigate through many search results before locatingthe items of interest. Such an approach may result in a significantamount of wasted time or frustration on the part of the user. Forcontent providers who offer items for consumption, such as productsoffered through an electronic marketplace, this frustration may preventa customer from quickly locating products of interest, which may resultin lost sales and lesser repeat business.

The subject matter claimed herein is not limited to embodiments thatsolve any disadvantages or that operate only in environments such asthose described above. Rather, this background is only provided toillustrate one example technology area where some embodiments describedherein may be practiced.

BRIEF DESCRIPTION OF THE DRAWINGS

Example embodiments will be described and explained with additionalspecificity and detail through the use of the accompanying drawings inwhich:

FIG. 1 illustrates an example system configured to perform adaptivesearch refinement;

FIG. 2A illustrates an example of a display illustrating visually guidedsearch refinement;

FIG. 2B illustrates an example of a display illustrating search results;

FIG. 3 illustrates another example system configured to perform adaptivesearch refinement;

FIG. 4 is a flowchart of an example computer-implemented method foradaptive search refinement; and

FIG. 5 is a flowchart of another example computer-implemented method foradaptive search refinement.

DESCRIPTION OF EMBODIMENTS

In some circumstances, an interactive system may include information ofinterest to a user. For example, the interactive system may be an onlinemarketplace or an information database, among other types of userinteractive systems. In some embodiments of the present disclosure, theinteractive system may be configured to provide adaptive searchrefinement to assist a user to identify material of interest.

Some embodiments herein relate to a computer-implemented method foradaptive search refinement. In some embodiments, the method may includeobtaining a first search query and comparing a level of specificity ofthe first search query to a search threshold. When the level ofspecificity is below the search threshold, the method may includeproviding visually guided search refinement to construct a second searchquery. The visually guided search refinement may be provided instead ofsearch results for the first search query. In some embodiments,providing the visually guided search refinement may include providingmultiple search refinement options. In some embodiments, each of thesearch refinement options may include an image visually illustrating asearch refinement category and being configured to be approved ordisapproved. Providing the visually guided search refinement may alsoinclude obtaining an indication of the approval or the disapproval ofone or more of the multiple search refinement options and repeatingproviding the multiple search refinement options and receiving theindication. In these and other embodiments, for each iteration ofproviding the multiple search refinement options, at least some of themultiple search refinement options are different and determined based onpreviously received indications of both approval and disapproval. Themethod of adaptive search refinement may also include providing searchresults based on the second search query.

Some embodiments herein also relate to another computer implementedmethod for adaptive search refinement. In some embodiments, the methodmay include obtaining an indication of user engagement with an onlinemarketplace and providing visually guided search refinement to constructa search query for searching the online marketplace. In someembodiments, the visually guided search refinement may include providingmultiple search refinement options. In some embodiments, each of thesearch refinement options may include an image visually illustrating asearch refinement category and being configured to be approved ordisapproved. The visually guided search refinement may further includeobtaining an indication of the approval or disapproval of one or more ofthe multiple search refinement options and repeating providing themultiple search refinement options and receiving the indication. In someembodiments, for each iteration of providing the multiple searchrefinement options, at least some of the multiple search refinementoptions are different and determined based on previously receivedindications of both approval and disapproval. The method of adaptivesearch refinement may also include providing search results based on thesearch query.

Turning to the figures, FIG. 1 illustrates an example system 100configured to perform adaptive search refinement. The system 100 may bearranged in accordance with at least one embodiment described in thepresent disclosure. The system 100 may include a network 110, aninteractive system 112 that includes a computing system 120, a database130, and a device 140.

The network 110 may be configured to communicatively couple theinteractive system 112 with the device 140. In some embodiments, thenetwork 110 may be any network or configuration of networks configuredto send and receive communications between devices. In some embodiments,the network 110 may include a conventional type network, a wired orwireless network, and may have numerous different configurations.Furthermore, the network 110 may include a local area network (LAN), awide area network (WAN) (e.g., the Internet), or other interconnecteddata paths across which multiple devices and/or entities maycommunicate. In some embodiments, the network 110 may include apeer-to-peer network. The network 110 may also be coupled to or mayinclude portions of a telecommunications network for sending data in avariety of different communication protocols. In some embodiments, thenetwork 110 may include Bluetooth® communication networks or a cellularcommunications network for sending and receiving communications and/ordata including via short message service (SMS), multimedia messagingservice (MMS), hypertext transfer protocol (HTTP), direct dataconnection, wireless application protocol (WAP), e-mail, etc. Thenetwork 110 may also include a mobile data network that may includethird-generation (3G), fourth-generation (4G), long-term evolution(LTE), long-term evolution advanced (LTE-A), Voice-over-LTE (“VoLTE”) orany other mobile data network or combination of mobile data networks.Further, the network 110 may include one or more IEEE 802.11 wirelessnetworks.

The device 140 may be any electronic device configured to provide a userwith access to one or more systems, which may include one or moreservers and databases, through a network. For example, the device 140may include a desktop computer, a laptop computer, a smartphone, amobile phone, a tablet computer, or any other processing deviceconfigured to access information over a network.

In some embodiments, the interactive system 112 may be any configurationof hardware, such as servers and databases, that are networked togetherand configured to perform a task. In some embodiments, the computingsystem 120 may be a single computing system that includes one or moreprocessors and memory, such as a server or some other computing system,within the interactive system 112. Alternately or additionally, thecomputing system 120 may include multiple computing systems, such asmultiple servers, that are networked together and configured to performa task within the interactive system 112. Alternately or additionally,the computing system 120 may include computing systems and/orcomputer-readable-instructions that are configured to be executed by theinteractive system 112 to perform the operations described in thisdisclosure. The database 130 may be any configuration of digital datastorage.

In some embodiments, the interactive system 112 may be configured toprovide a user, through the device 140, with an ability to browse orsearch for information, services, or goods listed or included within thedatabase 130 of the interactive system 112.

For example, the interactive system 112 may be configured as an onlinemarketplace for a seller or sellers to sell goods to buyers. In theseand other embodiments, the database 130 may include listings of goods tobe sold that may be accessed by a user through a device, such as thedevice 140. In some embodiments, the interactive system 112 may allowthe device 140 to browse through the listings of goods or search forparticular types of goods.

Alternately or additionally, the interactive system 112 may beconfigured as an information system that allows a user through a device,such as the device 140, to access information in the interactive system112. In these and other embodiments, the database 130 may include theinformation that may be accessed by the device 140. In some embodiments,the interactive system 112 may allow the device 140 to browse throughthe information or search for particular types of information.

In some embodiments, the computing system 120 may be configured toprovide visually guided search refinement for the user as the userbrowses or searches for particular information, services, or goodslisted or included within the database 130. In some embodiments,visually guided search refinement may provide a user with one or morevisually oriented search refinement options. For example, the computingsystem 120 may provide computer-readable instructions over the network110 to the device 140. The device 140, through a web browser or someother program may render the computer-readable instructions to presentthe visually oriented search refinement options to a user through thedevice 140. In this disclosure, the interactive system 112 or computingsystem 120 providing visually oriented search refinement options orother configurations may include providing computer-readableinstructions that when executed result in the oriented search refinementoptions over the network 110 as described.

In some embodiments, the visually oriented search refinement options maybe provided to a user in place of search results in response to anobtained search query. Alternately or additionally, the visuallyoriented search refinement options may be provided based on anindication of user engagement with the interactive system 112. Forexample, when the interactive system 112 is a website and the user isbrowsing a landing webpage or some other webpage, the computing system120 may provide visually oriented search refinement options based on theuser engagement with the landing webpage.

In some embodiments, each of the visually oriented search refinementoptions may relate to a particular search refinement category or may bea particular good, service, or information. In some embodiments, some ofthe visually oriented search refinement options may include an imagevisually illustrating a search refinement category. Alternately oradditionally, some of the visually oriented search refinement optionsmay include an image visually illustrating a search refinement categoryalong with a description of the search refinement category.

In some embodiments, a search refinement category may be any categorythat may be used to group or categorize goods, services, or informationprovided by the interactive system 112. For example, some searchrefinement categories for services, goods, or information may include aproduct category, an aspect category, a brand category, a keywordcategory, and/or a constraint category, among other categories. Theproduct category may relate to different types of services, goods, orinformation. For example, for a search related to insurance, the productcategory may relate to vehicle, home, life, health, and/or disability,among products of insurance. The aspect category may relate to differentaspects of services, goods, or information. For example, for a searchrelated to cars, the aspect category may relate to different colors ofcars. As another example, for a search related to clothes, the aspectcategory may relate to styles of clothes or clothes trending in socialmedia. The brand category may relate to different brands of services,goods, or information where the brands identify a manufacturer orretailer of the service or good or originator of the information.

The keyword category may relate to typical keywords that may beotherwise associated with particular services, goods, or informationbeing browsed or searched. The constraint category may relate toconstraints associated with services, goods, or information. For examplefor goods, the constraints may be associated with cost, warranty,reviews, size, shipping time, or time for delivery, among otherconstraints.

In some embodiments, when multiple visually oriented search refinementoptions are provided, each of the visually oriented search refinementoptions may be from a single search refinement category or from multipledifferent search refinement categories.

In some embodiments, the visually oriented search refinement options maybe configured to be approved or disapproved of by a user. In these andother embodiments, the visually oriented search refinement options maybe configured to receive an indication from a user of an approval ordisapproval of the visually oriented search refinement options. Forexample, the visually oriented search refinement options may include alike and dislike option, such as a radial button or image that may beselected. Alternately or additionally, the visually oriented searchrefinement options may be approved or disapproved based on theselection. Selection of the visually oriented search refinement optionsmay indicate approval of the visually oriented search refinement optionswhile non-selection may indicate disapproval.

The computing system 120 may be configured to obtain an indication of anapproval or disapproval of a user with respect to one or more of thevisually oriented search refinement options provided to a user. Forexample, when the visually oriented search refinement options areprovided in a web browser on the device 140 based on computer readableinstructions, such as html provided to the device 140 from theinteractive system 112 over the network 110. A user may indicate with anassociated input device of the device 140, such as a mouse, keyboard, ortouch screen, an approval or disapproval of one or more of the providedvisually oriented search refinement options that are provided to theuser. The received input may be processed by the web browser using thecomputer readable instructions provided by the interactive system 112and provided to the computing system 120 over the network 110.

The computing system 120 may collect the approvals and/or disapprovalsof the visually oriented search refinement options provided to a user.Based on the collection of approvals and/or disapprovals of the visuallyoriented search refinement options, the computing system 120 mayconstruct a search query that may be used to search for information,services, or goods listed or included within the database 130.

In some embodiments, the computing system 120 may be configured togenerate additional visually oriented search refinement options based onobtained indications of approval or disapproval of a user with respectto previously displayed visually oriented search refinement options. Forexample, the computing system 120 may be configured to display multiplevisually oriented search refinement options as a first set of visuallyoriented search refinement options and to obtain approvals ordisapprovals from a user for one or more of the visually oriented searchrefinement options in the first set. Based on the obtained approvals anddisapprovals of the visually oriented search refinement options of thefirst set, the computing system 120 may generate a second set ofvisually oriented search refinement options. Each of the visuallyoriented search refinement options in the second set may be differentfrom the visually oriented search refinement options in the first set orsome of the visually oriented search refinement options may be the samein both the first and second sets.

In some embodiments, the computing system 120 may be configured toobtain an approval or disapproval for each of the visually orientedsearch refinement options in a first set before providing a second setor search results based on the approvals or disapprovals. Alternately oradditionally, the computing system 120 may obtain one or more approvalsor disapprovals for each of the visually oriented search refinementoptions in a set before providing a second set or search results basedon the approvals or disapprovals. In some embodiments, the computingsystem 120 may assign weights to the approvals, disapprovals, and/ornon-approvals for each of the visually oriented search refinementoptions. In these and other embodiments, non-approvals may be visuallyoriented search refinement options for which a user does not provide anapproval or disapproval. For example, an approval of a visually orientedsearch refinement option may be weighted more than a non-approval, whichmay be weighted more than a disapproval when determining additionalvisually oriented search refinement options or generating a search querythat results in search results that are provided to a user.

The computing system 120 may be configured to generate a search querybased on the approvals, disapprovals, and/or non-approvals for providedvisually oriented search refinement options. The computing system 120may provide the search query to the interactive system 112. Theinteractive system 112 may conduct a search of the goods, services, orinformation stored in the database 130 using the search query. Thesearch results may be provided to the device 140 over the network 110for presentation to a user.

In some embodiments, the computing system 120 may be configured tocontinually provide different sets of visually oriented searchrefinement options until a particular threshold is met. For example, insome embodiments, the threshold may be a number of set of visuallyoriented search refinement options provided. Alternately oradditionally, the threshold may be a length of a search query resultingfrom the approvals and disapprovals of the visually oriented searchrefinement options. Alternately or additionally, the threshold may be alevel of specificity of a search query resulting from the approvals anddisapprovals of the visually oriented search refinement options.Alternately or additionally, the threshold may be a confidence levelthat a search query resulting from the approvals and disapprovals of thevisually oriented search refinement options may produce search resultsresulting in a conversion by a user. In some embodiments, the particularthreshold may vary based on the goods, services, and/or informationbeing considered, a user's past history, and/or among other factors.

In some embodiments, after the particular threshold is met, thecomputing system 120 may determine a search query and provide the searchquery to the interactive system 112. The interactive system 112 maysearch the database 130 with the search query and provide the resultingsearch results to the device 140. Alternately or additionally, thecomputing system 120 may search the database 130 with the search queryand provide the search results to the device 140.

In some embodiments, the computing system 120 may determine the searchquery using approvals, disapprovals, and non-approvals of the visuallyoriented search refinement options. In some embodiments, the approvals,disapprovals, and non-approvals of the visually oriented searchrefinement options may be applied with an absolute interpretation. Inthese and other embodiments, the search query may be constructed basedon the approvals and disapprovals of the visually oriented searchrefinement options. For example, the search query may be constructed toinclude the approved visually oriented search refinement options and tonot include disapproved visually oriented search refinement options orinclude the disapproved visually oriented search refinement options butindicate that the disapproved visually oriented search refinementoptions are disapproved. For example, for a search concerning camerasthat includes the approval of SLR and Brand A and disapproval of compactcameras and Brand B, the search query may be “camera and SLR and BrandA” or the search query may be “camera and SLR and Brand A and NOT(compact cameras and Brand B).”

In some embodiments, the approvals, disapprovals, and non-approvals ofthe visually oriented search refinement options may be applied with anon-absolute interpretation. In some embodiments, the non-absoluteinterpretation may be referred to as a fuzzy interpretation of theapprovals, disapprovals, and non-approvals of the visually orientedsearch refinement options. A search query based on a non-absoluteinterpretation may include or reject additional search terms than thosedirectly associated with the provided visually oriented searchrefinement options.

For example, an approval of a visually oriented search refinement optionassociated with a brand of a car, such as a luxury brand of a car, undera non-absolute interpretation may result in the inclusion of theapproved luxury brand and other luxury brands of cars. Alternately oradditionally, the disapproval of a visually oriented search refinementoption associated with a brand of a car, such as a luxury brand of acar, under a non-absolute interpretation may result in the non-inclusionof the disapproved luxury brand and other luxury brands of cars.

In some embodiments, a degree of the non-absolute interpretation used toconstruct the search query may vary. For example, when a user hasindicated a strong preference with respect to particular information,services, or goods, through the approval, disapproval, or non-approvalof provided visually oriented search refinement options, thenon-absolute interpretation may be more strictly applied. In contrast,when a user has not indicated a strong preference with respect toparticular information, services, or goods through the approval,disapproval, or non-approval of provided visually oriented searchrefinement options, the non-absolute interpretation may be less strictlyapplied.

In some embodiments, the degree of the non-absolute interpretation ofthe previously received indications of approval, non-approval, anddisapproval is based on a number of approvals, non-approvals, anddisapprovals of visually oriented search refinement options in a samesearch refinement category.

For example, a strong preference may be determined when there areapprovals for similar search refinement options and no disapprovals ornon-approvals for similar search refinement options. Alternately oradditionally, a strong preference may be determined when there aredisapprovals for similar search refinement options and no non-approvalsor approvals for similar search refinement options. Alternately oradditionally, a weak preference may be determined when them are variousapprovals and disapprovals in a similar search refinement option.

In some embodiments, a device 140 or a user through the device 140 mayrequest for search results before the particular threshold is met. Inthese and other embodiments, the computing system 120 may generate asearch query based on the previously received approvals, disapprovals,and non-approvals of previously presented visually oriented searchrefinement options. The generated search query may be used to search thedatabase 130 and produce search results to provide to the device 140. Inthese and other embodiments, the device 140 or a user through the device140 may toggle between receiving search results and visually orientedsearch refinement options. In these and other embodiments, when thesearch results and the visually oriented search refinement options areprovided may be based on a request from the device 140 or user throughthe device 140 and not based on the particular threshold. In someembodiments, search results and the visually oriented search refinementoptions may be provided such that both are presented by the device 140at the same time. In these and other embodiments, a change in anapproval, disapproval, or non-approval of provided visually orientedsearch refinement options may result in a change to the search resultsprovided to the device 140 and thus presented by the device 140.

An example of the operation of the system follows. A user may submit afirst search query of “television” to the interactive system 112 by wayof the device 140 and the network 110. The first search query may resultin a level of specificity that is below a search threshold as determinedby the computing system 120. The computing system 120 may provide thedevice 140 with a first search refinement options to present to theuser. The first search refinement options may include options such as“LCD,” “Plasma,” “Smart TV,” “4K,” and “Curved.” The user may approve of“LCD” and “Curved” and disapprove of “Plasma.” The user may not approveor disapprove of “Smart TV,” and “4K.” Based on the approvals anddisapprovals, the computing system 120 may generate a second searchrefinement options and provide the second search refinement options tothe device 140 for presentation by the user.

The second search refinement options may include “Phillips,” “Sony,”“Samsung,” “Size less than 60 inches,” and “Size greater than 60inches.” The user may approve of “Sony,” “Samsung,” and “Size greaterthan 60 inches.” The user's responses may be obtained by the computingsystem 120. Based on the user's response, the computing system 120 maydetermine a second search query that may result in a level ofspecificity that is above the search threshold. For example, the secondsearch query may be “Curved LCD television of greater than 60 inches bySony or Samsung or LG or Sharp but not Phillips.” Note that the LG andSharp may not have been a part of either of the first or second searchrefinement options. The LG and Sharp names in the second search requestmay have been a result of the computing system 120 applying anon-absolute interpretation of the approvals and disapprovals of thefirst or second search refinement options.

The computing system 120 may provide the second search query to theinteractive system 112. The interactive system 112 may search thedatabase 130 based on the second search query. The results of the secondsearch query may be provided to the device 140 for presentation to theuser. In this manner, the computing system 120 may provide visuallyguided search refinement for the user.

Generally, on-line marketplaces include an enormous number of listingsof items. For example, an on-line marketplace may include over 100,000listings that may result from a search for a generic search term. Thequantity of listings may reduce the likelihood that a user may find anappropriate good and purchase the good. The current disclosure providesan on-line marketplace with the ability to provide visually guidedsearch refinement for the user. The visually guided search refinementmay provide the on-line marketplace with an ability to determine morespecifically what a user is searching for and provide more relevantgoods for review by the user. In some circumstances, the more relevantthe goods the likelihood that the user purchases the goods may increase,thereby increasing the sales of the on-line marketplace.

Modifications, additions, or omissions may be made to the system 100without departing from the scope of the present disclosure. For example,the interactive system 112 may include additional components and/ornetworks than those illustrated in or described with respect to FIG. 1.For example, the interactive system 112 may include additionaldatabases, servers, and other computing systems configured to performother tasks for the interactive system 112.

FIG. 2A illustrates an example of a display 200 a illustrating visuallyguided search refinement. The display 200 a may be arranged inaccordance with at least one embodiment described in the presentdisclosure. The display 200 a may include a web browser or applicationthat is presenting a webpage or interface of an on-line marketplace thatprovides visually guided search refinement.

The visually guided search refinement may result in the presentation offirst, second, third, fourth, and fifth search refinement options 210 a,210 b, 210 c, 210 d, and 210 e, referred to herein collectively as thesearch refinement options 210. The first search refinement option 210 aincludes a disapproval icon 212 a and an approval icon 212 b that may beselected by a user through the web browser. Each of the other searchrefinement options may include a disapproval icon and an approval icon.

As illustrated, a search may have been entered for a “camera.” In placeof displaying search results, the on-line marketplace may direct the webbrowser or application to present the search refinement options 210. Asillustrated, the search refinement options 210 may be visual cards thatare displayed in the web browser or application. The search refinementoptions 210 may be directed to various search categories and some mayinclude images. For example, the first and second search refinementoptions 210 a and 210 b may illustrate brands, the third and fourthsearch refinement options 210 c and 210 d may illustrate differentcategories of types of cameras with corresponding images, and the fifthrefinement option 210 e may be a specific camera with an image.

In some embodiments, the on-line marketplace may direct the web browseror application to present a see results tab 230. In these and otherembodiments, a user selection of the see results tab 230 may result inthe on-line marketplace directing the web browser or application todisplay search results, such as illustrated in FIG. 2B.

In some embodiments, the on-line marketplace may direct the web browseror application to present a guided search progress tab 220. In these andother embodiments, the guided search progress tab 220 may provide anindication of when the on-line marketplace anticipates that the visuallyguided search refinement may be complete and search results may beprovided to the web browser or application for presentation to a user.

In some embodiments, one or more of the search refinement options 210may include a see results tab, such as the second search refinementoption 210 b. In these and other embodiments, the see results tab withinone of the search refinement options 210 may cause the on-linemarketplace to provide search results based on previous approvals anddisapprovals and an implied approval of the one of the search refinementoptions 210.

Modifications, additions, or omissions may be made to the presentationof the webpage or interface of the on-line marketplace without departingfrom the scope of the present disclosure. For example, in someembodiments, the webpage or interface of the on-line marketplace mayinclude additional or fewer search refinement options 210. Alternatelyor additionally, the webpage or interface of the on-line marketplace mayinclude additional or fewer tabs or options than those illustrated.

FIG. 2B illustrates an example of a display 200 b illustrating searchresults. The display 200 b may be arranged in accordance with at leastone embodiment described in the present disclosure. The display 200 bmay include a web browser or application that is presenting a webpage orinterface with search results from a search of an on-line marketplace.

The display 200 b is illustrating first, second, and third searchresults 240 a, 240 b, and 240 c, referred to herein collectively as “thesearch results 240.” The search results 240 may be results that areprovided by the on-line marketplace after providing a guided searchrefinement. In some embodiments, the display 200 b may include a guidedsearch tab 250. In these and other embodiments, a user selection of theguided search tab 250 may result in the on-line marketplace directingthe web browser or application to display search refinement options,such as illustrated in FIG. 2A.

As illustrated, the search results 240 may be configured in a differentmanner from the search refinement options 210 illustrated in FIG. 2.Furthermore, the search results 240 may be for a specific good offeredby the on-line marketplace. In contrast, the search refinement options210 illustrated in FIG. 2, except for the fifth search refinement option210 e illustrated in FIG. 2, may be for categories of goods and not forspecific goods offered by the on-line marketplace.

Modifications, additions, or omissions may be made to the presentationof the webpage or interface of the on-line marketplace without departingfrom the scope of the present disclosure. For example, in someembodiments, the webpage or interface of the on-line marketplace mayinclude additional or fewer search results 240. Alternately oradditionally, the webpage or interface of the on-line marketplace mayinclude additional or fewer tabs or options than those illustrated.

FIG. 3 illustrates another example system 300 configured to performadaptive search refinement. The system 300 may be arranged in accordancewith at least one embodiment described in the present disclosure. Thesystem 300 may include a network 310, an online marketplace 312, whichincludes a computing system 320 and a database 330, and a device 340.

The on-line marketplace 312 may be any configuration of hardware, suchas servers and databases, which are configured to provide an on-linemarketplace for a seller or sellers to sell goods to buyers. Forexample, the on-line marketplace 312 may be configured to provide anumber of publishing, listing, and price-setting mechanisms whereby aseller may list (or publish information concerning) goods or servicesfor sale, a buyer can express interest in or indicate a desire topurchase such goods or services, and a price can be set for atransaction pertaining to the goods or services. The prices set for atransaction may be auction-format listing and price setting mechanisms(e.g., English, Dutch, Chinese, Double, Reverse auctions, etc.). Othertypes of price listing formats may also be used. For example, afixed-price listing format (e.g., the traditional classifiedadvertisement-type listing or a catalogue listing) or a buyout-typelisting format may be used. In these and other embodiments, abuyout-type listing may be offered in conjunction with auction-formatlistings and allow a buyer to purchase goods or services, which are alsobeing offered for sale via an auction, for a fixed price that istypically higher than a starting price of an auction for an item. Insome embodiments, the sellers and/or buyers may access the onlinemarketplace 312 through the network 310 by way of the device 340. Forexample, a buyer may buy articles by accessing the online marketplace312 through the device 340. A seller may post articles for sale byaccessing the online marketplace 312 through the device 340.

The computing system 320 may be configured to perform adaptive searchrefinement within the online marketplace 312. In some embodiments, thecomputing system 320 may include a processor 322 and a memory 324.

In general, the processor 322 may include any suitable special-purposeor general-purpose computer, computing entity, or processing deviceincluding various computer hardware or software modules and may beconfigured to execute instructions stored on any applicablecomputer-readable storage media. For example, the processor 322 mayinclude a microprocessor, a microcontroller, a digital signal processor(DSP), an application-specific integrated circuit (ASIC), aField-Programmable Gate Array (FPGA), or any other digital or analogcircuitry configured to interpret and/or to execute program instructionsand/or to process data. Although illustrated as a single processor inFIG. 3, it is understood that the processor 322 may include any numberof processors configured to perform individually or collectively anynumber of operations described herein. Additionally, one or more of theprocessors may be present on one or more different electronic devices,such as different servers. In some embodiments, the processor 322 mayinterpret and/or execute program instructions and/or process data storedin the memory 324. In some embodiments, the processor 322 may fetchprogram instructions and load the instructions in the memory 324. Afterthe instructions are loaded into memory 324, the processor 322 mayexecute the program instructions.

For example, the processor 322 may fetch instructions from the database330 regarding adaptive search refinement, load the instructions into thememory 324, and execute the instructions to perform the operationsdescribed in this disclosure.

The memory 324 may include computer-readable storage media for carryingor having computer-executable instructions or data structures storedthereon. Such computer-readable storage media may be any available mediathat may be accessed by a general-purpose or special-purpose computer,such as the processor 322. By way of example, and not limitation, suchcomputer-readable storage media may include tangible or non-transitorycomputer-readable storage media including Random Access Memory (RAM),Read-Only Memory (ROM), Electrically Erasable Programmable Read-OnlyMemory (EEPROM), Compact Disc Read-Only Memory (CD-ROM) or other opticaldisk storage, magnetic disk storage or other magnetic storage devices,flash memory devices (e.g., solid state memory devices), or any otherstorage medium which may be used to carry or store desired program codein the form of computer-executable instructions or data structures andwhich may be accessed by a general-purpose or special-purpose computer.Combinations of the above may also be included within the scope ofcomputer-readable storage media. Computer-executable instructions mayinclude, for example, instructions and data configured to cause theprocessor 322 to perform a certain operation or group of operations.

The database 330 may be communicatively coupled with the computingsystem 320. The database 330 may include user histories 322 and machinelearning algorithms 334. The computing system 320 may access the userhistories 322 and the machine learning algorithms 334 from the database330.

The computing system 320 may be configured to provide visually guidedsearch refinement for a user as the user browses or searches for goodsor services offered by the online marketplace 312. In some embodiments,visually guided search refinement may provide a user with one or morevisually oriented search refinement options.

In some embodiments, the visually oriented search refinement options maybe provided to a user in place of search results in response to anobtained search query. For example, a user may enter a first searchquery into the device 340. The first search query may be provided to theonline marketplace 312 by the network 310. The computing system 320 maybe configured to determine when a level of specificity of the firstsearch query is below a search threshold. When the level of specificityof the first search query is below a search threshold, the computingsystem 320 may provide the user with visually guided search refinement.

In some embodiments, the level of specificity of the first search querymay be determined based on a number of words in the first search query.More words in the first search query may indicate that the first searchquery includes a higher level of specificity. In some embodiments, thesearch threshold may be based on an average number of words that resultin search results that include goods or services that are limited to aparticular number of categories of the goods and services offered by theonline marketplace 312. In some embodiments, the particular number ofcategories of the goods and services may be two or fewer. Alternately oradditionally, the particular number of categories of the goods andservices may be two or fewer sub or leaf categories of the goods andservices offered by the online marketplace 312. In some embodiments, theparticular number of categories of the goods and services may be basedon a conversion data of other users and the user.

In some embodiments, the level of specificity of the first search querymay be determined based on a number of categories or leaf categories ofthe goods and services that result when the first search query is usedto search the online marketplace 312. More categories or leaf categoriesof goods and services that result from searching the first search querymay indicate that the first search query includes a lower level ofspecificity. In some embodiments, the search threshold may be aparticular number of categories of the goods and services offered by theonline marketplace 312.

In these and other embodiments, the computing system 320 may beconfigured to continually provide search refinement options and obtainindications of approvals and/or disapprovals of a user of the providedsearch refinement options until a specificity of a second search query,which is based on the approval and/or disapprovals of the providedsearch refinement options, is above the search threshold.

In some embodiments, the visually oriented search refinement options maybe provided to a user at a request of the user. In these and otherembodiments, a user may select visually oriented search refinementoptions or search results. In these and other embodiments, the user mayswitch between the visually oriented search refinement options andsearch results.

In some embodiments, the visually oriented search refinement options maybe provided to a user in response to a user engaging with the onlinemarketplace 312. In some embodiments, the user may engage with theonline marketplace 312 when the user interacts with the onlinemarketplace 312. The user may interact with the online marketplace 312when the online marketplace 312 provides information to the device 340for presentation to the user at the request of the user. Alternately oradditionally, the user may engage with the online marketplace 312 whenthe user performs interactions that may be determined to indicate thatthe user is shopping for a good or service. In these and otherembodiments, the computing system 320 may use machine learningalgorithms 334 to determine whether the user interactions may bedetermined to indicate that the user is shopping for a good or service.For example, a user may be browsing random or pseudo-random goods orservices provided by the online marketplace 312. Information regardingthe browsing of the user may be provided to the machine learningalgorithms 334. The machine learning algorithms 334 may determine if theuser is focusing on a certain classification of goods or services. Inthese and other embodiments, after determining the user is focusing on acertain classification of goods or services, the computing system 320may provide visually oriented search refinement options to the userbased on the certain classification of goods or services to help directthe user to discover a good or service that may be purchased by theuser.

In these and other embodiments, the computing system 320 may continue toprovide a user with visually oriented search refinement options untilthe computing system 320 may determine with a confidence level above aparticular confidence threshold that the user is going to purchase agood or service. When the confidence level is above the particularconfidence threshold, the online marketplace 312 may provide specificgoods and/or services for presentation to the user. In some embodiments,the approval and disapprovals from the visually oriented searchrefinement options may be used to construct a search request. Theresults of the search request may be the specific goods and/or servicesprovided for presentation to the user.

By providing visually oriented search refinement options, the computingsystem 320 may guide a user through a browsing experience of the onlinemarketplace 312 to a good or service that may be purchased by the user.In these and other embodiments, the computing system 320 may determinewhen a confidence level is above a particular confidence threshold basedon machine learning algorithms 334. In some embodiments, the userhistory 332 along with approvals, disapprovals, and non-approvalsobtained by the computing system 320 with respect to provided visuallyoriented search refinement options may be provided to the machinelearning algorithms 334. The machine learning algorithms 334 may providethe confidence level. The particular confidence threshold may be basedon the user history 332, the categories of the visually oriented searchrefinement options provided to the user, among other factors. In someembodiments, the machine learning algorithms 334 may be developed basedon previous interactions with the online marketplace 312 by the user andother users.

In some embodiments, visually oriented search refinement optionsprovided for presentation to a user may be determined using the machinelearning algorithms 334. In these and other embodiments, the userhistory 332, including past purchases, approvals and disapprovals ofparticular goods and/or services, among current approvals, disapprovals,and/or non-approvals may be used to determine additional visuallyoriented search refinement options to provide to a user. For example,the machine learning algorithms 334 and the user history 322 may be usedto determine a degree of the non-absolute interpretation applied by thecomputing system 320. In these and other embodiments, the machinelearning algorithms 334 and the user history 322 may be used todetermine the additional search terms to include or reject with respectto a non-absolute interpretation. Alternately or additionally, themachine learning algorithms 334 without the user history 322 may be usedto determine a degree of the non-absolute interpretation and/or theadditional search terms to include or reject.

Modifications, additions, or omissions may be made to the system 300without departing from the scope of the present disclosure. For example,the computing system 320 and the database 330 may be communicativelycoupled by a network, such as the network 110 of FIG. 1. Alternately oradditionally, the system 300 may include multiple computing systems 320.

FIG. 4 is a flowchart of an example computer-implemented method 400 foradaptive search refinement. The method 400 may be arranged in accordancewith at least one embodiment described in the present disclosure. Themethod 400 may be implemented, in some embodiments, by a system, such asthe system 100 and/or 300 of FIGS. 1 and 3, respectively. Althoughillustrated as discrete blocks, various blocks may be divided intoadditional blocks, combined into fewer blocks, or eliminated, dependingon the desired implementation.

The method 400 may begin at block 402, where a first search query may beobtained. In block 404, a level of specificity of the first search querymay be compared to a search threshold. In some embodiments, the level ofspecificity of the first search query may be based on a word count ofthe first search query or a number of different categories in whichproducts which are found in the search results for the first searchquery are categorized.

In block 406, when the level of specificity is below the searchthreshold, visually guided search refinement may be provided toconstruct a second search query. The visually guided search refinementmay be provided instead of search results for the first search query.Providing the visually guided search refinement may include multipleoperations, steps, or functions. Some of the operations, steps, orfunctions to provide a visually guided search refinement may be includedin blocks 408, 410, and 412. For example, in block 408, multiple searchrefinement options may be provided. One or more of the search refinementoptions may include an image visually illustrating a search refinementcategory and being configured to be approved or disapproved.

In these and other embodiments, providing the visually guided searchrefinement may further include providing one or more goods options withthe search refinement options. Each of the goods options may include animage visually illustrating a particular good and being configured to beapproved or disapproved. Furthermore, in these and other embodiments,each iteration of providing the plurality of search refinement optionsmay be further based on the previously received indications of approvalor disapproval of the one or more goods options. Alternately oradditionally, search results that are provided to a user may include thegoods options with received indications of approval.

In block 410, an indication of the approval or the disapproval of one ormore of the multiple search refinement options may be obtained. In block412, providing the multiple search refinement options and receiving theindication may be repeated. For each iteration of providing the multiplesearch refinement options at least some of the multiple searchrefinement options are different and determined based on previouslyreceived indications of both approval and disapproval. In someembodiments, providing the multiple search refinement options andreceiving the indication is repeated until a level of specificity of thesecond search query is above the search threshold.

In some embodiments, the multiple search refinement options may bedetermined based on a non-absolute interpretation and an absoluteinterpretation of the previously received indications of approval anddisapproval. In these and other embodiments, a degree of thenon-absolute interpretation of the previously received indications ofboth approval, non-approval, and disapproval may be based on a number ofapprovals, non-approvals, and disapprovals for search refinement optionsin a same search refinement category.

The method 400 may further include block 414 where search results basedon the second search query may be provided.

One skilled in the art will appreciate that, for this and otherprocesses and methods disclosed herein, the functions performed in theprocesses and methods may be implemented in differing order.Furthermore, the outlined steps and operations are only provided asexamples, and some of the steps and operations may be optional, combinedinto fewer steps and operations, or expanded into additional steps andoperations without detracting from the essence of the disclosedembodiments.

For instance, in some embodiments, the method 400 may further includeobtaining a search results display request and in response to the searchresults display request, providing the search results based on thesecond search query before a level of specificity of the second searchquery is above a search threshold. In these and other embodiments, themethod 400 may further include obtaining a visually guided searchrefinement request and in response to the visually guided searchrefinement request, providing the visually guided search refinementafter providing the search results based on the second search query.

FIG. 5 is a flowchart of an example computer-implemented method 500 foradaptive search refinement. The method 500 may be arranged in accordancewith at least one embodiment described in the present disclosure. Themethod 500 may be implemented, in some embodiments, by a system, such asthe system 100 and/or 300 of FIGS. 1 and 3, respectively. Althoughillustrated as discrete blocks, various blocks may be divided intoadditional blocks, combined into fewer blocks, or eliminated, dependingon the desired implementation.

The method 500 may begin at block 502, where an indication of userengagement with an online marketplace may be obtained. In block 504, inresponse to obtaining the indication, visually guided search refinementmay be provided to construct a search query for searching the onlinemarketplace. Some of the operations, steps, or functions to provide avisually guided search refinement may be included in blocks 506, 508,and 510. For example, in block 506, multiple search refinement optionsmay be provided. One or more of the search refinement options mayinclude an image visually illustrating a search refinement category andbeing configured to be approved or disapproved. In block 508, obtainingan indication of the approval or disapproval of one or more of themultiple search refinement options

In block 510, providing the multiple search refinement options andreceiving the indication may occur repeatedly. In these and otherembodiments, for each iteration of providing the multiple searchrefinement options, at least some of the multiple search refinementoptions are different and determined based on previously receivedindications of both approval and disapproval. In some embodiments, themultiple search refinement options may be determined based on anon-absolute interpretation and an absolute interpretation of thepreviously received indications of approval and disapproval. In someembodiments, a degree of the non-absolute interpretation of thepreviously received indications of both approval and disapproval may bebased on a number of approvals and disapprovals for search refinementoptions in a same search refinement category.

In some embodiments, providing the multiple search refinement optionsand receiving the indication is repeated until an output of a preferencemachine learning model indicates a product preference above a productpreference threshold. In these and other embodiments, the output of thepreference machine learning model may be based on a past history of acurrent user, the previously received indications of both approval anddisapproval, and interactions with the website by one or more otherprevious users.

In some embodiments, providing the visually guided search refinement mayfurther include providing one or more goods options with the multiplesearch refinement options. Each of the goods options may include animage visually illustrating a particular good and being configured to beapproved or disapproved. In these and other embodiments, each iterationof providing the multiple search refinement options is further based onthe previously received indications of approval or disapproval of theone or more goods options. Furthermore, in some embodiments, the searchresults may include the goods options with received indications ofapproval.

In block 512, search results may be provided based on the search query.One skilled in the art will appreciate that, for this and otherprocesses and methods disclosed herein, the functions performed in theprocesses and methods may be implemented in differing order.Furthermore, the outlined steps and operations are only provided asexamples, and some of the steps and operations may be optional, combinedinto fewer steps and operations, or expanded into additional steps andoperations without detracting from the essence of the disclosedembodiments.

For example, in some embodiments, the method 500 may further includeobtaining a search results display request in response to the searchresult display request, providing the search results based on the searchquery before the output of the preference machine learning model isabove the product preference threshold.

In some embodiments, the method 500 may further include obtaining avisually guided search refinement request and in response to thevisually guided search refinement request, providing the visually guidedsearch refinement after providing the search results based on the searchquery.

As indicated above, the embodiments described herein may include the useof a special purpose or general purpose computer (e.g., the processor322 of FIG. 3) including various computer hardware or software modules,as discussed in greater detail below. Further, as indicated above,embodiments described herein may be implemented using computer-readablemedia (e.g., the memory 324 of FIG. 3) for carrying or havingcomputer-executable instructions or data structures stored thereon.

In some embodiments, the different components, modules, engines, andservices described herein may be implemented as objects or processesthat execute on a computing system (e.g., as separate threads). Whilesome of the system and methods described herein are generally describedas being implemented in software (stored on and/or executed by generalpurpose hardware), specific hardware implementations or a combination ofsoftware and specific hardware implementations are also possible andcontemplated.

Terms used herein and especially in the appended claims (e.g., bodies ofthe appended claims) are generally intended as “open” terms (e.g., theterm “including” should be interpreted as “including, but not limitedto,” the term “having” should be interpreted as “having at least,” theterm “includes” should be interpreted as “includes, but is not limitedto,” etc.).

Additionally, if a specific number of an introduced claim recitation isintended, such an intent will be explicitly recited in the claim, and inthe absence of such recitation no such intent is present. For example,as an aid to understanding, the following appended claims may containusage of the introductory phrases “at least one” and “one or more” tointroduce claim recitations. However, the use of such phrases should notbe construed to imply that the introduction of a claim recitation by theindefinite articles “a” or “an” limits any particular claim containingsuch introduced claim recitation to embodiments containing only one suchrecitation, even when the same claim includes the introductory phrases“one or more” or “at least one” and indefinite articles such as “a” or“an” (e.g., “a” and/or “an” should be interpreted to mean “at least one”or “one or more”); the same holds true for the use of definite articlesused to introduce claim recitations.

In addition, even if a specific number of an introduced claim recitationis explicitly recited, those skilled in the art will recognize that suchrecitation should be interpreted to mean at least the recited number(e.g., the bare recitation of “two recitations,” without othermodifiers, means at least two recitations, or two or more recitations).Furthermore, in those instances where a convention analogous to “atleast one of A, B, and C, etc.” or “one or more of A, B, and C, etc.” isused, in general such a construction is intended to include A alone, Balone, C alone, A and B together, A and C together, B and C together, orA, B, and C together, etc. For example, the use of the term “and/or” isintended to be construed in this manner.

Further, any disjunctive word or phrase presenting two or morealternative terms, whether in the description, claims, or drawings,should be understood to contemplate the possibilities of including oneof the terms, either of the terms, or both terms. For example, thephrase “A or B” should be understood to include the possibilities of “A”or “B” or “A and B.”

However, the use of such phrases should not be construed to imply thatthe introduction of a claim recitation by the indefinite articles “a” or“an” limits any particular claim containing such introduced claimrecitation to embodiments containing only one such recitation, even whenthe same claim includes the introductory phrases “one or more” or “atleast one” and indefinite articles such as “a” or “an” (e.g., “a” and/or“an” should be interpreted to mean “at least one” or “one or more”); thesame holds true for the use of definite articles used to introduce claimrecitations.

Additionally, the use of the terms “first,” “second,” “third,” etc. arenot necessarily used herein to connote a specific order. Generally, theterms “first,” “second,” “third,” etc., are used to distinguish betweendifferent elements. Absence a showing of a specific that the terms“first,” “second,” “third,” etc. connote a specific order, these termsshould not be understood to connote a specific order.

All examples and conditional language recited herein are intended forpedagogical objects to aid the reader in understanding the invention andthe concepts contributed by the inventor to furthering the art, and areto be construed as being without limitation to such specifically recitedexamples and conditions. Although embodiments of the present disclosurehave been described in detail, it should be understood that the variouschanges, substitutions, and alterations could be made hereto withoutdeparting from the spirit and scope of the present disclosure.

The invention claimed is:
 1. A system for adaptive search refinement,the system comprising: one or more processors; and one or more computerstorage media storing computer-useable instructions that, when executedby the one or more processors, cause the system to perform operationscomprising: receiving a search query from a device; providing, based atleast in part on a level of specificity of the search query, a first setof one or more search refinement options; receiving a user responseassociated with the first set of one or more search refinement options;and providing one or more search results to the device based at least inpart on the search query and the user response.
 2. The system of claim1, the operations further comprising: selecting one or more searchrefinement options of the first set of one or more search refinementoptions based at least in part on a user history, wherein providing thefirst set of one or more search refinement options is based on theselecting.
 3. The system of claim 1, the operations further comprising:determining that the level of specificity of the search query does notsatisfy a threshold level of specificity based at least in part on aword count of the search query.
 4. The system of claim 1, wherein eachof the one or more search results comprise at least one item listingidentified based at least in part on the user response.
 5. The system ofclaim 1, the operations further comprising: iteratively providing, basedat least in part on the search query and the user response, one or moreadditional sets of one or more search refinement options; and receivingone or more additional user responses for each of the one or moreadditional sets of one or more search refinement options.
 6. The systemof claim 1, wherein receiving a user response further comprises:receiving a first set of one or more indications of approval,disapproval, non-approval, or a combination thereof, each of the one ormore indications associated with one or more search refinement optionsof the first set of one or more search refinement options.
 7. The systemof claim 1, the operations further comprising: generating, based atleast in part on the level of specificity of the search query, avisually guided search refinement comprising one or more user responseicons corresponding to the first set of one or more search refinementoptions.
 8. The system of claim 1, the operations further comprising:refining, based at least in part on the user response, the search querywith one or more of the first set of one or more search refinementoptions; and determining that the search query satisfies a thresholdlevel of specificity based at least in part on the refining.
 9. Acomputer implemented method comprising: receiving a search query from adevice; providing, by one or more processors based at least in part on alevel of specificity of the search query, a first set of one or moresearch refinement options; receiving a user response associated with thefirst set of one or more search refinement options; and providing one ormore search results to the device based at least in part on the searchquery and the user response.
 10. The computer implemented method ofclaim 9, further comprising: selecting one or more search refinementoptions of the first set of one or more search refinement options basedat least in part on a user history, wherein providing the first set ofone or more search refinement options is based on the selecting.
 11. Thecomputer implemented method of claim 9, further comprising: determiningthat the level of specificity of the search query does not satisfy athreshold level of specificity based at least in part on a word count ofthe search query.
 12. The computer implemented method of claim 9,further comprising: determining that the search query does not satisfy athreshold level of specificity based at least in part on a word count ofthe search query.
 13. The computer implemented method of claim 9,further comprising: providing, based at least in part on the searchquery and the user response, one or more additional sets of one or moresearch refinement options; and receiving one or more additional userresponses for each of the one or more additional sets of one or moresearch refinement options.
 14. The computer implemented method of claim9, further comprising: iteratively providing, based at least in part onthe search query and the user response, one or more additional sets ofone or more search refinement options; and receiving one or moreadditional user responses for each of the one or more additional sets ofone or more search refinement options.
 15. The computer implementedmethod of claim 9, further comprising: receiving a first set of one ormore indications of approval, disapproval, non-approval, or acombination thereof, each of the one or more indications associated withone or more search refinement options of the first set of one or moresearch refinement options.
 16. The computer implemented method of claim9, further comprising: generating, based at least in part on the levelof specificity of the search query, a visually guided search refinementcomprising one or more user response icons corresponding to the firstset of one or more search refinement options.
 17. A non-transitorycomputer-readable medium storing instructions which, when executed byone or more processors, cause a system to perform operations comprising:receiving a search query from a device; providing, based at least inpart on a level of specificity of the search query, a first set of oneor more search refinement options; receiving a user response associatedwith the first set of one or more search refinement options; andproviding one or more search results to the device based at least inpart on the search query and the user response.
 18. The non-transitorycomputer-readable medium of claim 17, wherein the instructions, whenexecuted by the one or more processors, further cause the system toperform operations comprising: selecting one or more search refinementoptions of the first set of one or more search refinement options basedat least in part on a user history, wherein providing the first set ofone or more search refinement options is based on the selecting.
 19. Thenon-transitory computer-readable medium of claim 17, wherein theinstructions, when executed by the one or more processors, further causethe system to perform operations comprising: determining that the levelof specificity of the search query does not satisfy a threshold level ofspecificity based at least in part on a word count of the search query.20. The non-transitory computer-readable medium of claim 17, wherein theinstructions, when executed by the one or more processors, further causethe system to perform operations comprising: iteratively providing,based at least in part on the search query and the user response, one ormore additional sets of one or more search refinement options; andreceiving one or more additional user responses for each of the one ormore additional sets of one or more search refinement options. receivinga user response associated with the first set of one or more searchrefinement options; and providing one or more search results to thedevice based at least in part on the search query and the user response.18. The non-transitory computer-readable medium of claim 17, wherein theinstructions, when executed by the one or more processors, further causethe system to perform operations comprising: selecting one or moresearch refinement options of the first set of one or more searchrefinement options based at least in part on a user history, whereinproviding the first set of one or more search refinement options isbased on the selecting.
 19. The non-transitory computer-readable mediumof claim 17, wherein the instructions, when executed by the one or moreprocessors, further cause the system to perform operations comprising:determining that the level of specificity of the search query does notsatisfy a threshold level of specificity based at least in part on aword count of the search query.
 20. The non-transitory computer-readablemedium of claim 17, wherein the instructions, when executed by the oneor more processors, further cause the system to perform operationscomprising: iteratively providing, based at least in part on the searchquery and the user response, one or more additional sets of one or moresearch refinement options; and receiving one or more additional userresponses for each of the one or more additional sets of one or moresearch refinement options.